In recent years, speeding up of communication has been desired, and various attempts have been made in order to increase the communication speed. For example, in order to reduce data transmission volume, redundancy removal is performed for transmission target data in some cases. In redundancy removal, the communication apparatus of the receiving side associates and saves data received in the past from the communication apparatus of the transmitting side in a cache in association with identifiers, and the communication apparatus of the transmitting side also stores identifiers of data transmitted in the past. The communication apparatus of the transmitting side determines whether data that is about to be transmitted is data that has already been transmitted, using the identifier of the data, and for data that has already been transmitted, transmits the identifier associated with the data to the communication apparatus of the receiving side, instead of the data. The communication apparatus of the receiving side reads the data associated with the received identifier from the cache, and handles the read data as data transmitted from the communication apparatus of the transmitting side.
In relation to the processing of redundant data, a method have been known in which, in a case in which the same image data is processed, the printer driver forwards data to the printer with attachment of information indicating such matter, and the printer caches the image data.
When removing redundancy in transmitted data using a cache, the larger the size of the cache provided in the communication apparatus of the receiving side, the more data are stored in the cache, and therefore, it becomes easier to prevent transmission of redundant data. However, the capacity of the cache provided in the communication apparatus of the receiving side is limited, and when the available capacity in the cache runs out, the communication apparatus of the receiving side is to perform deletion starting from data with a longer elapsed time since the last access. For this reason, due to the deletion of data at the receiving side, redundancy removal may not be efficiently performed in some cases. For example, even when data A is included a plurality of times in transmission target data, a large volume of data without redundancy may be transmitted between data A transmitted first and data A transmitted later. At this time, if the available capacity of the cache of the communication apparatus of the receiving side runs out before the transmission of the data A transmitted later and the data A is deleted at the communication apparatus of the receiving side, it follows that the communication apparatus of the transmitting side is to transmit the data A again to the communication apparatus of the receiving side.